package juc.jmm;
/*
* 内存可见性 解决 1.volatile关键子 2.加synchronized锁
* */
public class Test1 {
    //易变的
//    volatile private static boolean flag=true;
    private static boolean flag=true;
    public static void main(String[] args) throws InterruptedException {
          new Thread(()->{
              while (true){
                  synchronized ("") {
                  }
                  if(!flag)break;
              }
          },"t").start();
          Thread.sleep(1000);
          //内存不可见 在N次while循环后jit会将flag的值缓存到t线程的工作空间 从而在修改flag时导致了内存的不可见
          flag=false;
    }
}
